package vista;

import java.util.Vector;

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.WindowConstants;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.DefaultTableModel;

import modelo.Producto;
import modelo.TipoDTO;

public class vListarProductosTipo extends JFrame{


	private static final long serialVersionUID = 1L;
	private Vector<TipoDTO> tDTO;
	private JTable tabla;
	private JScrollPane barra;
	
	public vListarProductosTipo(Vector<TipoDTO> vec) {
		super();
		tDTO = vec;
		cargarVentana();
	}

	private void cargarVentana() {

		setSize(900, 400);
		setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);

		tabla = new JTable(new DefaultTableModel(new Object[] { "Codigo Tipo",
				"Descripcion", "Codigo Prod","Descripcion","Stock"}, 0));
		cargarDatos();
		tabla.setEnabled(false);
		tabla.setBounds(getBounds());
		tabla.getColumnModel().getColumn(0).setPreferredWidth(50);
		DefaultTableCellRenderer rightRenderer = new DefaultTableCellRenderer();
		rightRenderer.setHorizontalAlignment(DefaultTableCellRenderer.RIGHT);
		DefaultTableCellRenderer leftRenderer = new DefaultTableCellRenderer();
		leftRenderer.setHorizontalAlignment(DefaultTableCellRenderer.LEFT);
		tabla.getColumnModel().getColumn(1).setCellRenderer(leftRenderer);
		tabla.getColumnModel().getColumn(1).setPreferredWidth(100);
		tabla.getColumnModel().getColumn(2).setCellRenderer(leftRenderer);
		tabla.getColumnModel().getColumn(2).setPreferredWidth(50);
		tabla.getColumnModel().getColumn(3).setCellRenderer(leftRenderer);
		tabla.getColumnModel().getColumn(3).setPreferredWidth(200);
		tabla.getColumnModel().getColumn(4).setCellRenderer(leftRenderer);
		tabla.getColumnModel().getColumn(4).setPreferredWidth(50);
		barra = new JScrollPane(tabla);
		barra.setBounds(getBounds());
		setContentPane(barra);
		setTitle("Productos por Tipo");
		setResizable(false);
		setLocationRelativeTo(null);
	}

	private void cargarDatos() {
		DefaultTableModel modeloVista = (DefaultTableModel) tabla.getModel();
		
		for (int i = 0; i < tDTO.size(); i++) {
		Vector<Producto> p = tDTO.elementAt(i).getProducto();
			for(int j=0;j<p.size();j++){
				modeloVista.addRow(new Object[] {
					String.valueOf(tDTO.elementAt(i).getIdTipo()),
					tDTO.elementAt(i).getDescripcion(),
				    String.valueOf(p.elementAt(j).crearProductoDTO().getCodProducto()),
				    p.elementAt(j).crearProductoDTO().getDescripcion(),
				    String.valueOf(p.elementAt(j).crearProductoDTO().getStock())
					 });
			}
		}

	}
	
}
